Automatically inserting relevant hyperlinks into a webpage

ABSTRACT

A methodology through which a host site may automatically insert relevant links into a set of text. In this methodology, the contents of the text are compared against a database containing character strings, and the character strings from the database contained in the text are identified. Each of the character strings in the database has an associated link that connects to other webpages on the same website or other websites. For each character string of the database found in the contents of the text, the associated link is inserted into the text. In this way, only relevant links are inserted into the text.

FIELD OF THE INVENTION

The present invention relates to a method for automatically insertingrelevant hyperlinks into a webpage that is transmitted and displayed onthe Internet.

BACKGROUND OF THE INVENTION

It is well known for a user to access textual information through a hoston a communication network. This process 10 is summarized in FIG. 1. Themethod begins by establishing a connection between the host and theuser, step 20. Generally, the host resides on a “server” and the useraccesses the host from a “client.” The Client-Server paradigm is a modelof interaction in a distributed communication system in which a programat one site sends a request to a program at another site and waits for aresponse. The requesting program is called the client, and the programresponding to the request is called the server. In the context of theWorld Wide Web (discussed below), the client is a “Web browser,” orsimply “browser,” which runs on a computer of the user. The program thatresponds to browser requests by serving Webpages is commonly referred toas a “Web server.”

As part of the connection, the host includes a Web site, a computersystem that serves informational content over a network using standardprotocols. Typically, a site corresponds to a particular Internet domainname, such as “www.Deja.com,” and includes the content associated with aparticular organization. As used in the present invention, the termwebsite is generally intended to encompass both (i) thehardware/software server components that serve the informational contentover the network, and (ii) the “back end” hardware/software components,including any nonstandard or specialized components, that interact withthe server components to perform services for users of the Web site.

Once the connection is established in step 20, the host and the userinteract over a distributed network, such as the Internet. The Internetis a collection of interconnected (public and/or private) networks thatare linked together over various communication mediums by a set ofstandard protocols, such as TCP/IP and HTTP (discussed below), to form aglobal, distributed network. It should be appreciated that, while theterm Internet generally used to refer to what is now commonly known asthe World Wide Web, it also encompasses other forms of data transfer andis intended herein to equally apply equally to variations that may bemade in the future, including changes and additions to existing standardprotocols.

An important segment of the Internet is the World Wide Web (“Web”). TheWeb is used herein to refer generally to both (i) a distributedcollection of interlinked, user-viewable hypertext documents (commonlyreferred to as Web documents or Webpages) that are accessible via theInternet, and (ii) the client and server software components whichprovide user access to such documents using standardized Internetprotocols. Currently, the primary standard protocol for allowingapplications to locate and acquire Web documents is Hypertext TransferProtocol (“HTTP”), and the Webpages are encoded using Hyper-Text MarkupLanguage (“HTML”). However, the terms, Web and “World Wide Web,” areintended to encompass future markup languages and transfer protocolsthat may be used in place of (or in addition to) Extended MarkupLanguage (“XML”), HTML, and HTTP.

HTTP is the standard World Wide Web client-server protocol used for theexchange of information, such as HTML documents and client requests forsuch documents, between a browser and a Web server. HTTP includes anumber of different types of messages which can be sent from the clientto the server to request different types of server actions. For example,a “GET” message, which has the format GET:Uniform Resource Locator(“URL”), causes the server to return the document or file located at thespecified URL.

HTML is a standard coding convention and set of codes for attachingpresentation and linking attributes to informational content withindocuments. HTML 4.0 is currently the primary standard used forgenerating Web documents. During a document authoring stage, the HTMLcodes (referred to as “tags”) are embedded within the informationalcontent of the document.

In particular, after establishing a connection, the user forwards to thehost a request for information, step 30. Using HTTP, this request isusually in the form of getting a document located at a URL. A URL is aunique address which fully specifies the location of a file or otherresource on the Internet. The general format of a URL is“Protocol://machine_address:port/path/filename.” The port specificationis optional, and if none is entered by the user, the browser defaults tothe standard port for the service that is specified as the protocol. Forexample, if HTTP is specified as the protocol, the browser will use theHTTP default port of 80.

After receiving the request from the host, the host serves to thecustomer's computer the requested text, step 40. The text files aregenerally written in HTML, and when the documents are transferred fromthe host server to the user client, the codes are interpreted by thebrowser and used to parse and display the text. In addition tospecifying how the Web browser is to display the document, HTML tags canbe used to create links to other Web documents or sites (the tags arecommonly referred to as “hyperlinks”). A hyperlink is a navigationallink from one document to another, or from one portion (or component) ofa document to another. Typically, a hyperlink is displayed as ahighlighted word or phrase that can be selected by clicking on it usinga pointing device or a mouse to jump to the associated document ordocument portion. A set of hyperlinks is combined to form a hypertextsystem, a computer-based informational system in which documents (andpossibly other types of data entities) are linked together viahyperlinks to form a user-navigable web.

A system for implementing the method 10 is illustrated in FIG. 2. Auser's computer (client) 100 connects to the Internet 110, generallythrough a dial-up Internet Service Provider (“ISP”). A web browser 105is contained on the client 100. The client 100 contacts a host server120 storing a desired document (webpage) 125 through the Internet 110and established connection 130. As previously described, HTTP is used toadminister the transfer of information through the connection 130. Inparticular, the host server 120 receives a request for the webpage 125from an input device 101 connected to the client 100. The host serverresponds by serving the requested webpage 125 to the client 100 fordisplay on a connected display device 102.

There are several known methods for placing the webpage 125 onto thehost server 120. For example, host personnel may manually program thecontents of the webpage. However, this process is time consuming andrelatively expensive because of the cost for the programmers. It istherefore desirable for the host to automatically find the contents ofthe webpage from a secondary source.

For example, it is well known for a host to load a document from asecond server. In effect, the host acts as a client and requestsinformation from the secondary source. For example, as illustrated inFIG. 2, a host server 120 may establish a connection 130′ to a secondserver 120′ using HTTP. Once the connection 130 is established, the hostsends a request for information 135 contained on the second server. Inresponse, the second server serves the information 135 to the hostserver 120. The host server 120 transforms the information 135 as neededand stores it as host webpage 125. The second sever may make thecontents of the information 135 publicly available for use or may chargea fee to the host server. This arrangement is similar to news reportingservices that publish and license news articles for used by newspapersaround the country.

In an alternative method to easily form webpages, the host uses onlinenews messages (“articles”) to provide content. Online articles arepublic communications and, thus, available for viewing by any user in anetwork. This feature allows a sender of the article to reach numerousother users. For example, the sender can request information withoutknowing a specific source for the information. In particular, thecontents of articles are placed at locations called newsgroups forpublic viewing.

The Usenet news system supports thousands of different newsgroups. Eachnewsgroup is identified by a newsgroup name that identifies the topic ofdiscussion carried on the newsgroup. Newsgroups are available for a vastarray of different topics ranging from business technology to cooking. Auser may simultaneously post an article to one or more newsgroups. Thearticle is then distributed to news servers throughout the Internet soit can be accessed by other users. An article is a text message oftenwith attachments such as pictures, audio segments or some other binarydata. A group of computers that exchange news articles is called a newsnetwork. The largest and best known news network is the Usenet, which iscarried through the Internet. The Usenet is not a physical network, buta logical network implemented on top of many different types of physicalnetworks, such as the Internet, as illustrated in FIG. 3. The newsservers are organized into a logical network across the Internet,feeding news articles to each other. In particular, computers on theInternet exchange news using software which follows Network NewsTransfer Protocol (“NNTP”). NNTP is an application protocol, asdescribed in Request for Comment (RFC) 977, used for the distribution,inquiry, retrieval, and article of news articles using a reliablestream-based protocol, such as Transmission Control Protocol (TCP). TCPis described in RFC 793. News articles use various header fields asdocumented in RFC 1036. News servers may be implemented in various ways,for example, InterNetNews (INN) is a popular UNIX news serverapplication.

As illustrated in FIG. 3, news articles are distributed via the newsservers operated by Internet service providers, schools, universities,and companies. There is no central server on the Usenet. Instead, newsservers are organized into a “store and forward” network. When a clientposts an article, a news server stores a copy and forwards the articleto a configurable set of news servers. These news servers, uponreceiving an article from another news server, store a copy if thearticle was not previously stored and forward the article to other newsservers so that eventually an article is forwarded to all the newsservers.

News servers make arrangements among themselves to specify whichnewsgroups they exchange. The “receiving” server tells the “sending”server which newsgroups it wants to receive, and the sending server isconfigured to send only the specified newsgroups. Servers typically sendarticles to other servers more or less in the order of arrival. However,this sequence can become scrambled for various reasons, and as a result,a server commonly receives follow-on articles before the originalarticle.

There are two known techniques for preventing the article from beingredelivered to the same news server, and servers usually use both ofthese methods in sequence. In the first technique, the transferredarticles contain a “Path:” header line that records the news serversthat the article has traveled through between the originating server andthe current server. If the receiving server already appears in the“Path:” line, the sending server does not try to send the articlebecause the article has already passed through the receiving server. Inthe second technique for preventing the resending of an article, theservers use a “Message-ID:” header line in the article that contains anidentifying code that is unique for each article. In particular, beforetransmitting the article, the sending server asks the receiving server,in effect, “Has the article with the Message-ID already been received.”The receiving server responds either “No, please send a copy,” or “Yes,already received so do not send it,” whereby the sending server onlysends the article if it is not already received by the receiving server.

Eventually, most servers that carry the newsgroup have a copy of thearticle, and ideally, an article to a newsgroup travels to all sites(news servers) that carry the newsgroup. The final result is that tensor hundreds of thousands of copies of the article will be present onnews servers scattered all over the globe.

“News clients” or “newsreaders” communicate with the news server, viaNNTP. Many news clients, such as Microsoft Internet News®, MicrosoftOutlook Express® and Netscape Communicator's Collabra® application arecommercially available.

By accessing the Usenet, the host 120 may act as a news client tosubscribe and collect news articles. The news articles are public-domainand may be freely used and modified. The host 120 displays the articleto users throughout a distributed information network, such as theInternet. The host may then become a portal through which a user mayaccess the Usenet without the use of a news server.

In particular, the host adapts the contents of the articles for use overthe Internet. In this process, the host converts the news to HTML formatfor transfer via HTTP to the client. This procedure is relatively simplebecause the articles are in text format and can be readily used in anHTML document. Typically, the host serves to a user an HTML page with anopen area or box reserved for the contents of the article. The HTML pagefurther contains a command to access and display the contents of thearticle. The HTML command “HFER” (hypertext reference) allows thewebpage to access a specified document. For example, the command,“HFER=/www.site.com/id=x,” allows the HTML page to access the contentsof the document number x stored at the server at the URL, www.site.com.

Thus, a host may employ several techniques to create or obtain text todisplay to users. Once the host has the text, it is known toautomatically insert hyperlinks with the text. For example, it is commonto provide advertisements around the text that link users to sponsors ofthe host site. Similarly, the webpage generally contains links aroundthe text that direct the user to other parts of the website. However,these automatically inserted links have little relevance to the specificcontents of the text and are displayed regardless of the contents of thetext. The disadvantage of the unrelated links is that they are of littleinterest to the user and can be easily ignored. For example, a websitecould simultaneously display a criticism of a product adjacent to anadvertisement for the same product.

Furthermore, by providing relevant links, the host encourages users toaccess information and features because the user will naturally wish toaccess the linked page if the page is related to a subject of interestto the user. If irrelevant links are provided, the user may becomefrustrated and avoid using the links, even if some of the links directthe user to highly helpful sites.

While the host personnel may manually insert hyperlinks into a webpageaccording to the contents of the text, this process is time consumingand relatively expensive because of the cost of labor for theprogrammers.

Thus there exists a current need for a method to identify the subject ofthe text in a webpage and to automatically insert relevant links intothe text without requiring extensive reprogramming of the page. In thisway, the host integrates the text with the other contents of the hostsite by inserting relevant hyperlinks that interconnect the relatedcontents of the site. This design allows a user to more easily identifyand access the relevant contents of the host site by selecting links,thus facilitating a user's access to other information and featurescontained on the host site. Similarly, the host site may alert a user ofnewly available features or products, by linking to them from popularlyaccessed webpages of relevant text.

The host may also wish to modify the text to promote other relevantwebsites. In particular, the host may wish to direct users by linking tothe site of a relevant sponsor, such as a manufacturer or a vendor ofproducts of interest to the user. A link should only connect to sponsorsof interest to the user. By better targeting users, the host site mayincrease advertising revenues.

Furthermore, by linking to relevant webpages, the host may createassociations with certain topics or products. For example, a host thatprovides information on music products and links to related musicvendors sites may become a primary portal through which buyers accessmusic related information and products.

SUMMARY OF THE INVENTION

In view of the identified current need, it is an object of the presentinvention to provide a methodology through which a host site mayautomatically insert relevant links into a set of text. In thismethodology, the contents of the text are compared against a databasecontaining character strings, and character strings from the databasecontained in the text are identified. Each of the character strings inthe database has an associated hyperlink that allows users to connect toother pages on the same website or other websites. For each characterstring of the database found in the contents of the text, the associatedlink is inserted into the text. In this way, only relevant links areinserted into the text.

BRIEF DESCRIPTION OF THE DRAWINGS

These and other features and advantages of the invention will now bedescribed with reference to the drawings in which like number refer tolike elements and in which:

FIG. 1 is a flowchart illustrating a known method for transferringinformation over a distributed communication network;

FIG. 2 is a schematic diagram of a distributed communication networkused to implement the method of FIG. 1;

FIG. 3 is a schematic diagram of a news network;

FIG. 4. is a flowchart illustrating the method according to onepreferred embodiment of the present invention for automaticallyinserting relevant links into a webpage; and

FIG. 5 is an illustrative image of a webpage formed in accordance withthe method of FIG. 4.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

The present invention provides a method 200 for automatically insertinghyperlinks into text contained in a webpage, as illustrated in FIG. 4.In illustrated method 200, the first step 210 is to load into memory,such as a buffer, the contents from the text. Then, in the second step220, the contents of the text are compared to character stringscontained in a database in order to identify which, if any, of thecharacter strings appears in the text. Each of the character strings hasan associated hyperlink, and for each of the identified characterstrings contained in the text, the associated hyperlink is inserted inthe contents of the webpage, step 230.

During the step 210, the text may come from various sources, asdescribed above. In one embodiment, the text is manually entered by hostpersonnel. However, as previously described, this method is timeconsuming and relatively expensive because of the labor involved.Therefore, in a preferred embodiment, the text is loaded automaticallyfrom a second website, as described above in FIGS. 1-2. It should beappreciated that similar techniques may be used to load text from onewebpage to a second webpage at the same website. In this way, a websitemay re-employ useful text throughout a website, from one webpage to asecond webpage.

In an alternative preferred embodiment, the text may be loaded fromnewsgroups articles during step 210. This process is described above andillustrated in FIG. 3. In this way, the site may adapt the publiclyavailable articles, thus providing a considerable amount of content tothe site without requiring extensive programming.

Once the text is loaded, the contents of the text are compared tocharacter strings contained in a database, step 220. Each of thecharacter strings has an associated hyperlink also contained in thedatabase. An exemplary database is illustrated in the following table:TABLE 1 CHARACTER STRING HYPERLINK car www.AcmeCar.com carswww.AcmeCar.com Car www.AcmeCar.com CAR www.AcmeCar.com automobilewww.AcmeCar.com Acme www.AcmeCar.com model www.AcmeCar.com/go-car Go-Carwww.AcmeCar.com/go-car safety features www.AcmeCar.com/safety airbagswww.AcmeCar.com/safety engine size www.AcmeCar.com/engines V-6www.AcmeCar.com/enginesTable 1 contains hyperlinks to a hypothetical Acme Car Company thatproduces a model called the Go-Car. In general, the database willidentify general terms for a concept (e.g., car, automobile, safetyfeatures, engine size) as well as specific terms and brand names (e.g.,Acme, Go-Car, airbags, and V-6). The database can contain the characterstring in different cases (e.g., car, Car, Car). Similarly, the databasemay contain plural, singular forms of the same terms (e.g., car andcars). Each of the character strings is paired with an appropriate URL.This pairing is predefined and can be readily changed according to theneeds of the website.

While Table 1 shows a hierarchical database, it should be appreciatedthat many other forms of for databases are known and may be used. Forexample, a relational database may be used to store the characterstrings and the associated links.

In order to meet the needs of electronic commerce, the database shouldcontain product names that may appear in the text. In particular, thedatabase may include (1) common product identifiers (“CPIDs”), (2) aname defined by the host to identify a product (“shortname”); (3) full,formal name for a product; and/or (4) categories of products.

A shortname should be the most common name used to reference theproduct, while being as unique as possible. The shortname is often asubset of the full product name, and the same product may have more thanone shortname. The use of the shortnames is advantageous because itallows an easy-to-use standard terminology for the same product that canbe applied regardless of the language or format of the text. The hostmay coordinate with producers of text documents so that the producers oftext consistently use the shortname for a product. This process helpsincrease the relevancy of the hyperlinks by reliably indicating arelation of the text to a product.

By using only the unique shortname to identify the products discussed ina text document, the number of character strings contained in thedatabase may be reduced because the database would not need to containevery possible name for a product. By reducing the number of characterstrings, the amount of computations and the computational time requiredfor step 220 may be greatly reduced.

In one embodiment, the links point to other webpages contained on thesame website as the webpage displaying the text. In particular, thelinks may connect the users to webpages on the site related to productsmentioned to the text. In this way, the website could direct the userfrom text related to a product to a webpage containing furtherinformation on the same product. Alternatively, a website may allow theuser to purchase the mentioned item by linking the user to a webpage forplacing an order.

In another embodiment, the relevancy of the links is improved by usingsecondary indicators of the subject matter of the text. For example, thehost may look to the topic of a newsgroup or source site and use thisinformation in the selection of relevant links. For example, the subjectmatter of the newsgroup may be used to limit the number of characterstrings. For example, when providing links to an article from anewsgroup related to cars, the host may search only character stringsrelated to cars. Again, by limiting the numbers of character strings tobe searched, the number of computations and the time for thecomputations in step 220 is reduced.

Then, in step 230, the relevant links are inserted into the contents ofthe webpage. For example, the hyperlink may appear as a symbol or banneradjacent to the text. The user then may select and activate the link byproviding an input, such as a mouse click on the link.

In one preferred implementation, the hyperlinks appear in the contentsof the text rather than at the periphery. The user therefore is exposedto the hyperlink while reading. The appearance of the identifiedcharacter string is altered to indicate to the user that the characterstring is a hyperlink. Typically, after the character string isconverted into a hyperlink, the character string is underlined. Thecharacter string may additionally be displayed in a different color tofurther differentiate the hyperlink from the remainder of the text. Forexample, if a user reads an article in a news forum about cars and thearticle contains the word “Acme,” the present invention causes the word“Acme” as displayed within the text as a hyperlink to the Acme page.Because the links embedded in contextually relevant text, users are morelikely to click to view the linked destination.

FIG. 5 illustrates a newsgroup article displayed in a website in whichthe term “SUV” has been converted into a hyperlink. As seen in FIG. 5,“SUV” appears bolded and underlined in the text to signify to the userthat the term is a hyperlink to another document. FIG. 5 alsoillustrates how the periphery of text can contain further linkedadvertisements to related vendors. In particular, because the messageconcerns automobiles, the website contains advertisements to relatedtopics such as models of cars or vendors of car parts and accessories.

As illustrated in FIG. 5, hyperlinks could also dynamically enablee-commerce textual content across the Internet by enabling other contentsites, publishers, and aggregators to add these links to their textualcontent. These links could point either to the host site or to aco-branded or private labeled site. In particular, many sites containlarge quantities of stored text. In order to better use the text, thewebsite may wish to insert hyperlinks to related vendors. Every time auser connects from the site to a vendor, the vendor may pay the site areferral fee.

In a preferred implementation, only the first occurrence of a characterstring in the text is converted to a hyperlink. This method helpspreserve the original appearance of the text and helps avoid the cluttercaused by simultaneously displaying numerous links to the same location.Overall, the present invention seeks to avoid significantly reducing theappeal of the host site. For example, there should be a maximum 1%reduction in pageviews per session and maximum 1% increase in theabandonment rate (or “frustration rate”).

Multiple insertions of the same link in a single text file may beavoided using any of several known techniques. For example, the site maybe programmed to store a record of the character strings identified inthe text and to add links only at the first instance of each characterstring. Alternatively, the database may be modified by removing acharacter string after the string is located in the text. In this way,only a single instance of the character string is identified.

In addition, the insertion of the hyperlink into the text should notdisturb any existing HTML codes. Therefore, if the insertion ofhyperlink at the initial location would disturb the HTML code used toform the webpage, the hyperlink should be added later in the text at asubsequent occurrence of the character string. Alternatively, thehyperlink may be positioned in the periphery of the text.

As described above, it is desirable to make the links as relevant aspossible. With common product names, it is possible to mislink a stringof text (i.e., provide a link leading to an unrelated product orconcept). One way to decrease the likelihood of mislinking is to makethe database search case sensitive (e.g., only match Windows®, notwindow). The database may be further adapted to allow for a list ofstopwords (i.e. common words that should not be automatically linked)because the risk of mislinking the stopwords is too high. In addition,the database may be designed such that certain character strings wouldnot be linked even if portions of the character strings would normallybe linked. For example, in the hypothetical example of Table 1, “car”may link to the Acme Car company site, but “Beta car” of a hypotheticalrival Beta Car company should not link to the Acme site.

One concern with modifying text received from a third party is the riskof the possibility of copyright infringement. In particular, the linksmay be perceived as adding to an author's copyrighted work without theauthor's permission. This use for the text may fall outside of thehost's implied license to use the text. One way to avoid such apossibility is to not change text to insert links when the author hasindicated that modification is not permitted. For example, the contentsof the text may contain an explicit prohibition against modification ofthe text contents. Similarly, Internet documents may contain a headerthat indicates the author does allow modification of the text. This isgenerally in the format of a “X-no-modify” header.

In another embodiment, the user may opt to receive only text and not thehyperlinks. This may be accomplished by displaying the original textdocument to the user.

Hypothetical Example 1

A user looks at the host site regularly to keep up with his newsgroupreading. While browsing the rec.arts.movies forums for anything onmusicals, he notices that some of the movie titles are linked by beingdisplayed in hypertext. He clicks one link, and he is taken to a webpagecontaining information about the musicals. As he continues to browse, hediscovers that information on many other products are linked through thenewsgroup articles.

Hypothetical Example 2

An author writes for a text-based, third-party site. The third-partysite signs up with the host to commerce-enable all their text documents.The author sets up a feed that enables the host site to download thetext from the third-party site. The host site inserts relevanthyperlinks into the text and provides the third-party host a list of thehyperlinks contained within each text document. If the third-party siteindicates that it does wish to modify the appearance of the text byplacing the links in-line with the contents of text, the links may beadded to the periphery of the text.

The invention having been described, it will be apparent to thoseskilled in the art that the same may be varied in many ways withoutdeparting from the spirit and scope of the invention. Any and all suchmodifications are intended to be included within the scope of thefollowing claims.

1. A method comprising: determining whether a webpage permitsmodification; if the webpage permits modification, comparing a portionof text contained in the webpage to at least one character string storedin a database, the at least one character string respectivelycorresponding to at least one data item; and if the portion of textcontained in the webpage matches the character string stored in thedatabase, inserting the corresponding data item into the webpage.
 2. Themethod of claim 1, wherein the determining includes reading a header inthe webpage that indicates the webpage permits modification.
 3. Themethod of claim 1, wherein the determining includes reading a header inthe webpage that indicates the webpage does not permit modification,wherein the header includes an X-no-modify header.
 4. The method ofclaim 1, wherein the determining includes parsing the text contained inthe webpage to identify a prohibition against modification of the text.5. The method of claim 1, wherein the data item is a hyperlink.
 6. Themethod of claim 1, wherein the portion of text contained in the webpageis a product name.
 7. The method of claim 1, wherein the portion of textcontained in the webpage is a portion of a newsgroup article.
 8. Themethod of claim 1, wherein inserting the corresponding data item intothe webpage includes reconfiguring computer code used to form thewebpage such that the inserted data item changes appearance.
 9. Themethod of claim 1, wherein inserting the corresponding data item intothe webpage includes inserting the corresponding data item into thewebpage only for the first occurrence of the portion of text in thewebpage.
 10. The method of claim 1, including determining a generaltopic of the text in the webpage and comparing the portion of textcontained in the webpage to at least one character string stored in thedatabase, the at least one character string stored in the database beingrelated to the general topic of the text in the webpage.
 11. Anapparatus comprising: a host site configured to: determine whether awebpage permits modification; if the webpage permits modification,compare a portion of text contained in the webpage to at least onecharacter string stored in a database, the at least one character stringrespectively corresponding to at least one data item; and if the portionof text contained in the webpage matches the character string stored inthe database, insert the corresponding data item into the webpage. 12.The apparatus of claim 11, being configured to read a header in thewebpage that indicates the webpage permits modification.
 13. Theapparatus of claim 11, being configured to read a header in the webpagethat indicates the webpage does not permit modification, wherein theheader includes an X-no-modify header.
 14. The apparatus of claim 11,being configured to parse the text contained in the webpage to identifya prohibition against modification of the text.
 15. The apparatus ofclaim 11, wherein the data item is a hyperlink.
 16. The apparatus ofclaim 11, wherein the portion of text contained in the webpage is aproduct name.
 17. The apparatus of claim 11, wherein the portion of textcontained in the webpage is a portion of a newsgroup article.
 18. Theapparatus of claim 11, being configured to reconfigure computer codeused to form the webpage such that the inserted data item changesappearance.
 19. The apparatus of claim 11, being configured to insertthe corresponding data item into the webpage only for the firstoccurrence of the portion of text in the webpage.
 20. The apparatus ofclaim 11, being configured to determine a general topic of the text inthe webpage and compare the portion of text contained in the webpage toat least one character string stored in the database, the at least onecharacter string stored in the database being related to the generaltopic of the text in the webpage.